package com.dhcc.bpm.modules.scf.vo.ScfInvoiceInfoVO;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.NullSerializer;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;

import java.math.BigDecimal;

/**
 * 完税（发票）信息列表查询视图层实体类
 */
@Data
public class ScfGetInvoiceListVO {
    /**
     * 主体主键
     */
    private String rowId;

    /**
     * 发票代码
     */
    private String invoiceCode;

    /**
     * 发票号码
     */
    private String invoiceNum;

    /**
     * 开票方
     */
    private String invoicerName;

    /**
     * 购买方
     */
    private String buyerName;

    /**
     * 发票种类
     */
    private String invoiceType;

    /**
     * 开票日期
     */
    private String invoiceDate;

    /**
     * 商品单价
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private BigDecimal unitPrice;

    /**
     * 金额（不含税金额）
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private BigDecimal goodAmount;

    /**
     * 税率
     */
    private String taxRate;

    /**
     * 税额
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private BigDecimal taxAmount;

    /**
     * 含税总金额-由不含税额+税额计算得到
     */
    @JsonSerialize(using = ToStringSerializer.class, nullsUsing = NullSerializer.class)
    private BigDecimal totalAmount;
    /**
     * 关联状态（是否关联到支付回单）
     */
    private String associationSts;
    /**
     * 录入人
     */
    private String recorder;
    /**
     * 录入日期
     */
    private String recordDate;
    /**
     * 录入时间
     */
    private String recordTime;



    private String invoiceRowId;
    private String paymentRowId;
}
